package com.zzx.service;

import com.alibaba.fastjson.JSONObject;
import com.zzx.entity.TUser;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzx.entity.vo.DecryptUserInfo;

import java.util.List;

/**
* @author zzx
* @description 针对表【t_wx_user(用户表)】的数据库操作Service
* @createDate 2025-05-21 22:41:50
*/
public interface TUserService extends IService<TUser> {

    List<TUser> selectBy(TUser param);

    void add(TUser param);

    void deleteById(TUser param);


    /**
     * 微信登录
     * @param code 小程序登录code
     * @return 自定义登录态token
     */
    JSONObject wxLogin(String code);

    /**
     * 根据openId获取用户信息
     * @param openId
     * @return
     */
    TUser getByOpenId(String openId);

    /**
     * 编辑用户以及新增公司
     * @param param
     * @return
     */

    JSONObject editTUserAndTCompany(TUser param);

    /**
     * 解密用户信息
     * @param decryptUserInfo
     * @return
     */
    JSONObject decryptUserInfo(DecryptUserInfo decryptUserInfo);

    TUser findById(Long userId);
}
